Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[vtadmin] vtexplain lock #7724

Merged
merged 3 commits into from
Mar 23, 2021

Conversation

ajm188
Copy link
Contributor

@ajm188 ajm188 commented Mar 21, 2021

Description

(I took the easy way out, because the longer-term fix is much more, uh, involved 😅)

This PR adds a synchronization lock to concurrent vtexplain requests. I also took this opportunity to give us some rudimentary insight into how long we're stuck waiting on that lock, as well as to ensure we clean up the execution environment after each request.

Related Issue(s)

Checklist

  • Should this PR be backported? no
  • Tests were added or are not required no
  • Documentation was added or is not required

Deployment Notes

Impacted Areas in Vitess

Components that this PR will affect:

  • Query Serving
  • VReplication
  • Cluster Management
  • Build/CI
  • VTAdmin

Signed-off-by: Andrew Mason <amason@slack-corp.com>
Signed-off-by: Andrew Mason <amason@slack-corp.com>
Signed-off-by: Andrew Mason <amason@slack-corp.com>
Copy link
Contributor

@doeg doeg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wow, this is a tricky bug that seems like it would have caused vexing problems down the road, so thanks for snagging it early. Your write-up in #7723 is great, too.

@rohit-nayak-ps rohit-nayak-ps merged commit e1f6b15 into vitessio:master Mar 23, 2021
@askdba askdba added the Component: VTAdmin VTadmin interface label Mar 23, 2021
@askdba askdba added this to the v10.0 milestone Mar 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: VTAdmin VTadmin interface
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants